{
    //es5 中的异步操作
    // let ajax = function(callback){
    //     console.log('执行');
    //     setTimeout(function(){
    //         callback && callback.call();
    //     },3000);
    // }
    // ajax(function(){
    //     console.log('timeout1');
    // })

    // 执行步骤一 执行步骤二 执行步骤三 执行步骤四
}










{
    //ES6
    // let ajax = function(){
    //     return new Promise(function(resolve,reject){
    //         setTimeout(function(){
    //             resolve(1111);//resolve后会有then方法，执行后续操作
    //         },1000);
    //     })
    // }


    var p1 = new Promise(function(resolve,reject){
        reject(222);

    })

    p1.catch(function(num){
        console.log(num);
    })


    // var ajax = function(){
    //
    //     return new Promise(function(resolve,reject){
    //         resolve(111);
    //     })
    // }
    //
    // ajax().then(function(num){
    //     console.log(num);
    // })


    // var oBox = document.getElementsByClassName('box')[0];
    //
    // var widthBig = function(target,callback){
    //     var timer = setInterval(function(){
    //         console.log(oBox);
    //         var old = oBox.offsetWidth;
    //         var newValue = old + 10
    //         if(old>target){
    //             clearInterval(timer);
    //             callback && callback();
    //         }
    //         oBox.style.width = newValue + 'px';
    //     },100);
    // }

    // var heightBig = function(target,callback){
    //     var timer = setInterval(function(){
    //         var old = oBox.offsetHeight;
    //         var newValue = old + 10
    //         if(old>target){
    //             clearInterval(timer);
    //             callback&& callback();
    //         }
    //         oBox.style.height = newValue + 'px';
    //     },100);
    // }

    // widthBig(400,function(){
    //     heightBig(400,function(){
    //         widthBig(600,function(){
    //             heightBig(600)
    //         })
    //     })
    // });
}


// var oBox = document.getElementsByClassName('box')[0];
// var widthBig = function(target){
//
//     return new Promise(function(resolve,reject){
//         var timer = setInterval(function(){
//             var old = oBox.offsetWidth;
//             var newValue = old + 10
//             if(old>target){
//                 clearInterval(timer);
//                 resolve();
//             }
//             oBox.style.width = newValue + 'px';
//         },100);
//     })
// }
//
//
// var heightBig = function(target){
//     return new Promise(function(resolve,reject){
//         var timer = setInterval(function(){
//             var old = oBox.offsetHeight;
//             var newValue = old + 10
//             if(old>target){
//                 clearInterval(timer);
//                 resolve();
//             }
//             oBox.style.height = newValue + 'px';
//         },100);
//     })
// }
//
// widthBig(400).then(function(){
//     return heightBig(400);
// }).then(function(){
//     return heightBig(600);
// })
// .then(function(){
//     return widthBig(600);
// })
